This invention relates to storage systems, and in particular to techniques of assuring appropriate performance of external storage systems coupled to local storage systems, for example, in situations where storage controller based virtualization is employed.
Large organizations throughout the world now are involved in millions of transactions which include enormous amounts of text, video, graphical and audio information. This information is being categorized, stored, accessed, and transferred every day. The volume of such information continues to grow. One technique for managing such massive amounts of information is to use storage systems. Commercially available storage systems include large numbers of hard disk drives operating under various control mechanisms to record, mirror, remotely backup, and reproduce this data. The rapidly growing amount of data requires most companies to manage the data carefully with their information technology systems, and to assure appropriate performance within such systems.
One common occurrence in the management of such data is the need to assure its preservation by making remote copies of the information in a location away from a primary or production site. Maintaining such records in a remote site helps assure the owner of the data that the data will be available even if there are natural disasters or other unexpected events which occur at the primary site and destroy the data there. By having stored the data in a remote location, protection is also provided in the event of failures in the primary storage system, as well as other events. Should an event occur at the primary site, the data from the remote copy operation can be retrieved and replicated for use by the organization, thereby preventing data loss or the need to recreate the data at considerable cost and delay.
With an appropriate schedule (either synchronously or asynchronously) with host operations changing data at the primary site, the data at the remote site (the “remote copy”) is also updated via a communications network. The network can be dedicated to the transmission of data between the primary site and the remote site, use the Internet, or by other means. Of course, because the remote site is, by definition, located at a distance from the primary site to provide enhanced data protection, there is a delay between the time the data is stored at the primary site and the time the data is transmitted to and stored at the remote site. Depending upon the bandwidth of the connection and the particular equipment at the remote site, this delay can be significant. Examples of storage-based remote copy technology as provided by leading vendors are Hitachi TrueCopy™, EMC SRDF™, and IBM PPRC™.
In many such systems the remote site will have what is referred to as an external storage system, that is, a storage system which is not connected to the host at the primary site, but instead is connected to a host at the secondary site. This can allow priority conflicts to occur which prevent the data at the secondary site from being as current as the host at the primary site would like.
Virtualization of storage systems is becoming more widespread. Controller based virtualization is one of the typical ways to provide this functionality. In controller based virtualization, the storage controller presents the external storage system as a virtual system to the host. A typical mechanism for achieving this is described in U.S. Pat. No. 6,529,976 entitled “Heterogeneous Computer System, Heterogeneous Input Output System and Data Back-Up Method For The Systems,” which is commonly assigned with this application.
Various techniques have been provided for attempting to assure the performance of storage systems. Prioritized port control (PPC) is one example. In PPC a mechanism is provided to define priorities, such as throughput, for some accesses. Because the prioritized accesses do not have any limitation to the logical unit or port, non-prioritized accesses have reduced throughput, helping assure that the prioritized accesses meet the desired standard. A detailed mechanism for achieving this is described in “Prioritized Port Control: Hitachi Freedom Storage Lightning 9900V Series, Priority Access User's Guide, page 3-13.
Another example of a known performance assuring mechanism is cache logical partitioning (CLPAR). In general, the cache memory in a storage system is shared by all write operations. By using CLPAR, however, some amount of the cache on the storage system can be reserved, or partitioned, for specific access to a logical unit.
Another example of a mechanism for helping assure desired performance is the SCSI “RESERVATION” command. Once “reservation” is set for a particular logical unit by an application, the SCSI commands from other applications are restricted. A more detailed explanation of that mechanism can be found at “SCSI RESERVATION command: T10 draft: SCSI-2 Small Computer System Interface, pages 189-192.” Unfortunately, none of the above described techniques is operable in the context of an external storage system.
What is needed, however, is a technique by which external storage systems can be managed in a manner to enable their performance to be reliably controlled, and a specified measure of performance achieved.